부록 A — 행렬의 기초

이 장에서는 회귀분석의 이론 전개에 필요한 행렬 이론과 선형 대수의 기초에 대하여 알아볼 것이다.

A.1 벡터와 행렬

다음 \(p\)-차원 벡터(vector) 또는 열벡터(column vector) \(\pmb a\)\(p\)개의 원소 \(a_1, a_2, \dots, a_p\) 를 하나의 열(column)에 배치한 형태를 가진 개체이다.

\[ \pmb a = \begin{bmatrix} a_1 \\ a_2 \\ \vdots \\ a_p \end{bmatrix} \]

차원이 \(n \times p\) 인 행렬 \(\pmb A\) 는 다음과 같이 \(n\)개의 행과 \(p\) 개의 열에 원소 \(a_{ij}\)를 다음과 같이 배치한 형태를 가진다.

\[ \pmb A = \begin{bmatrix} a_{11} & a_{12} & \dots & a_{1p} \\ a_{21} & a_{22} & \dots & a_{2p} \\ \vdots & \vdots & & \dots \\ a_{n1} & a_{n2} & \dots & a_{np} \end{bmatrix} \]

A.2 두 행렬의 덧셈

두 행렬 \(\pmb A\)\(\pmb B\) 를 더하는 규칙은 다음과 같다.

  • 두 행렬 \(\pmb A\)\(\pmb B\) 는 행과 열의 갯수가 같아야 한다.
  • \(\pmb A + \pmb B = \pmb C\) 라고 하면, 덧셈의 결과로 만들어진 행렬 \(\pmb C\)는 두 행렬과 같은 수의 행과 열을 가지면 각 원소는 다음과 같다.

\[ \pmb A + \pmb B = \pmb C \quad \rightarrow \quad c_{ij} = a_{ij} + b_{ij} \]

A.3 스칼라곱

임의의 실수 \(\lambda\) (스칼라)가 주어졌을 때, \(\lambda\) 와 행렬 \(\pmb A\)의 스칼라곱(scalar product) 는 행렬의 모든 원소에 \(\lambda\) 를 곱해준 행렬로 정의된다.

예를 들어 \(\lambda=2\), \(\pmb A \in \RR^{2\times 3}\) 인 경우

\[ \lambda \pmb A = 2 \begin{bmatrix} 1 & 2 & 3 \\ -1 & 0 & 2 \end{bmatrix} = \begin{bmatrix} 2 & 4 & 6 \\ -2 & 0 & 4 \end{bmatrix} \]

A.4 벡터와 행렬의 곱셈

\(n \times p\) 인 행렬 \(\pmb A\)\(p\)-차원 벡터(vector) \(\pmb b\)는 다음과 같이 두 개의 서로 다른 형태로 나타낼 수 있다.

먼저 행렬과 벡터의 곱셈은 행렬 \(\pmb A\) 의 행벡터와 벡터 \(\pmb b\) 의 내적(inner product)로 나타낼 수 있다.

\[ \begin{align} {\pmb A} {\pmb b} & = \begin{bmatrix} a_{11} & a_{12} & \dots & a_{1p} \\ a_{21} & a_{22} & \dots & a_{2p} \\ \vdots & \vdots & & \dots \\ a_{n1} & a_{n2} & \dots & a_{np} \end{bmatrix} \begin{bmatrix} b_1 \\ b_2 \\ \vdots \\ b_p \end{bmatrix} \\ & = \begin{bmatrix} {\pmb r}^t_1 \\ {\pmb r}^t_2 \\ \vdots \\ {\pmb r}^t_n \end{bmatrix} \begin{bmatrix} b_1 \\ b_2 \\ \vdots \\ b_p \end{bmatrix} \quad \text{ where } {\pmb r}^t_i = \begin{bmatrix} a_{i1} & a_{i2} & \dots & a_{ip} \end{bmatrix} \\ & = \begin{bmatrix} {\pmb r}^t_1 {\pmb b} \\ {\pmb r}^t_2 {\pmb b} \\ \vdots \\ {\pmb r}^t_n {\pmb b} \end{bmatrix} = \begin{bmatrix} \sum_{j=1}^p a_{1j} b_j \\ \sum_{j=1}^p a_{2j} b_j \\ \vdots \\ \sum_{j=1}^p a_{nj} b_j \end{bmatrix} \\ & = \begin{bmatrix} <\pmb r_1, \pmb b> \\ <\pmb r_2, \pmb b> \\ \vdots \\ <\pmb r_n, \pmb b> \end{bmatrix} \end{align} \]

위에서 \(< \pmb a, \pmb b>\) 는 다음과 같은 두 벡터의 내적(inner product)을 의미한다.

\[ < \pmb a, \pmb b> = {\pmb a}^t {\pmb b} = \sum_{i=1}^p a_i b_i \]

이제 행렬과 벡터의 곱셈을 행렬을 구성하는 열벡터들의 선형조합(linear combination)으로 나타낼 수 있다.

\[ \begin{align} {\pmb A} {\pmb b} & = \begin{bmatrix} a_{11} & a_{12} & \dots & a_{1p} \\ a_{21} & a_{22} & \dots & a_{2p} \\ \vdots & \vdots & & \dots \\ a_{n1} & a_{n2} & \dots & a_{np} \end{bmatrix} \begin{bmatrix} b_1 \\ b_2 \\ \vdots \\ b_p \end{bmatrix} \\ & = \begin{bmatrix} {\pmb c}_1 & {\pmb c}_2 & \dots & {\pmb c}_p \end{bmatrix} \begin{bmatrix} b_1 \\ b_2 \\ \vdots \\ b_p \end{bmatrix} \quad \text{ where } {\pmb c}_j = \begin{bmatrix} a_{1j} \\ a_{2j} \\ \vdots \\ a_{nj} \end{bmatrix} \\ & = b_1 \begin{bmatrix} a_{11} \\ a_{21} \\ \vdots \\ a_{n1} \end{bmatrix} + b_2 \begin{bmatrix} a_{12} \\ a_{22} \\ \vdots \\ a_{n2} \end{bmatrix} + \cdots + b_p \begin{bmatrix} a_{1p} \\ a_{2p} \\ \vdots \\ a_{np} \end{bmatrix} \\ & = b_1 {\pmb c}_1 + b_2 {\pmb c}_2 + \cdots + b_p {\pmb c}_p \\ \end{align} \]

A.5 행렬의 전치

\(\pmb A^t\)는 행렬의 전치(transpose)를 나타낸다.

A.6 행렬의 곱셈

먼저 두 행렬 \(\pmb A\)\(\pmb B\) 의 곱셈

\[ \pmb A \times \pmb B \equiv \pmb A \pmb B \]

을 정의하려면 다음과 같은 조건이 만족되어야 한다.

  • 행렬 \(\pmb A\) 의 열의 갯수와 행렬 \(\pmb B\) 의 행의 갯수가 같아야 한다

따라서 두 행렬의 곱셈은 순서를 바꾸면 정의 자체가 안될 수 있다.

이제 두 행렬 \(\pmb A \in \RR^{m \times n}\)\(\pmb B \in \RR^{n \times k}\)의 곱셈은 다음과 같이 정의된다.

\[ \pmb A \pmb B = \pmb C\]

행렬 \(\pmb C\)\(m\) 개의 행과 \(k\)개의 열로 구성된 행렬이며(\(\pmb C \in \RR^{m \times k}\)) 각 원소 \(c_{ij}\)는 다음과 같이 정의된다.

\[ c_{ij} = \sum_{l=1}^n a_{il} b_{lk}, \quad i=1,2,\dots,m; j=1,2,\dots,k \]

먼저 간단한 예제로 다음과 같은 두 개의 행렬의 곱을 생각해 보자.

\[ \pmb A \pmb B = \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} \begin{bmatrix} 0 & 1 \\ -1 & 2 \end{bmatrix} = \begin{bmatrix} (1)(0) + (2)(-1) & (1)(1) + (2)(2) \\ (3)(0) + (4)(-1) & (3)(1) + (4)(2) \end{bmatrix} = \begin{bmatrix} -2 & 5 \\ -4 & 11 \end{bmatrix} \]

곱하는 순서를 바꾸어 계산해 보자.

\[ \pmb B \pmb A = \begin{bmatrix} 0 & 1 \\ -1 & 2 \end{bmatrix} \begin{bmatrix} 1 & 2 \\ 3 & 4 \end{bmatrix} = \begin{bmatrix} (0)(1) + (1)(3) & (0)(2) + (1)(4) \\ (-1)(1) + (2)(3) & (-1)(2) + (2)(4) \end{bmatrix} = \begin{bmatrix} 3 & 4 \\ 5 & 6 \end{bmatrix} \]

위 두 결과를 보면 행렬의 곱셈에서는 교환법칙이 성립하지 않음을 알 수 있다.

이제 차원이 다른 두 행렬의 곱셈을 살펴보자.

\[ \pmb A = \begin{bmatrix} 1 & 2 & 3\\ 3 & 2 & 1 \end{bmatrix}, \quad \pmb B = \begin{bmatrix} 0 & 2 \\ 1 & -1 \\ 0 & 1 \end{bmatrix} \]

두 행렬의 곱셈은 다음과 같이 계산할 수 있다.

\[ \pmb A \pmb B = \begin{bmatrix} 1 & 2 & 3\\ 3 & 2 & 1 \end{bmatrix} \begin{bmatrix} 0 & 2 \\ 1 & -1 \\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 2 & 3 \\ 2 & 5 \end{bmatrix} \]

두 행렬의 곱하는 순서를 바꾸면 차원이 전혀 다른 행렬이 얻어진다.

\[ \pmb B \pmb A = \begin{bmatrix} 0 & 2 \\ 1 & -1 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 2 & 3\\ 3 & 2 & 1 \end{bmatrix} = \begin{bmatrix} 6 & 4 & 2 \\ -2 & 0 & 2 \\ 3 & 2 & 1 \end{bmatrix} \]

행렬의 곱셈은 교환법칙이 성립하지 않는다.

\[ \pmb A \pmb B \ne \pmb B \pmb A \tag{A.1}\]

주의

교환법칙이 성립하지 않는다는 의미는 식 A.1 이 언제나 성립한다는 의미는 아니다. 아래와 같이 특별한 경우 교환법칙이 성립하는 경우도 있다.

\[ \begin{bmatrix} 1 & 2 \\ 1 & 3 \end{bmatrix} \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} = \begin{bmatrix} 1 & 2 \\ 1 & 3 \end{bmatrix} = \begin{bmatrix} 1 & 0 \\ 0 & 1 \end{bmatrix} \begin{bmatrix} 1 & 2 \\ 1 & 3 \end{bmatrix} \]

  • 행렬의 곱셈은 결합법칙과 배분법칙은 성립한다.

\[ (\pmb A \pmb B) \pmb C = \pmb A (\pmb B \pmb C) \]

\[ (\pmb A + \pmb B) \pmb C = \pmb A \pmb C + \pmb B \pmb C \]

A.7 단위벡터와 항등행렬

\(i\)번째 단위벡터 \(\pmb e_i\)를 정의하자. 단위벡터 \(\pmb e_i\)\(n\)- 차원 벡터로서 \(i\)번째 원소만 1이고 나머지는 0인 벡터이다.

\[ \pmb e_i = \begin{bmatrix} 0 \\ 0 \\ \vdots \\ 0 \\ 1 \\ 0 \\ \vdots \\ 0 \end{bmatrix} \]

\(n\)-차원 항등행렬 \(\pmb I\)는 n개의 단위벡터들을 모아놓은 것이다.

\[ \pmb I = [ \pmb e_1 ~~ \pmb e_2 ~~ \dots ~~ \pmb e_n ] \]

A.8 대각합

\(\pmb A = \{ a_{ij} \}\)\(n \times n\) 정방행렬(square matrix)인 경우, 행렬의 대각합(trace)을 \(tr(\pmb A)\)로 표시한다.

\[ tr(\pmb A) = \sum_{i=1}^n a_{ii} \]

행렬의 곱셈은 일반적으로 교환법칙이 성립하지 않지만 대각합의 연산은 교환법칙이 성립한다.

\[ tr(\pmb A \pmb B) = tr( \pmb B \pmb A) \]

두 행렬의 덧셈(뺄셈)에 대한 대각합에 대한 성질들은 다음과 같다.

\[ tr( {\pmb A} \pm {\pmb B}) = tr({\pmb A}) \pm tr({\pmb B}) \]

A.9 행렬식

\(\pmb A\)의 행렬식(determinant)을 \(det(\pmb A)=|\pmb A|\)로 표기한다.

만약 행렬 \(\pmb A\)가 대각행렬(diagonal matrix)이면 \(|\pmb A|\)는 행렬의 대각원소의 곱이다 (\(| \pmb A| =\prod a_{ii}\)).

두 행렬의 곱의 행렬식은 각 행렬의 행렬식의 곱이다.

\[ |\pmb A \pmb B | = | \pmb A| |\pmb B| \]

행렬식에 대한 유용한 공식들은 다음과 같다.

  • \(|{\pmb A}^t| = |{\pmb A}|\)
  • \(|c {\pmb A}| = c^n |{\pmb A}|\)

만약 행렬 \(\pmb A\)가 다음과 같은 분할행렬(partitioned matrix) 의 형태를 가지면

\[ \pmb A = \begin{bmatrix} {\pmb A}_{11} & {\pmb A}_{12} \\ {\pmb 0} & {\pmb A}_{22} \end{bmatrix} \]

행렬 \(\pmb A\)의 행렬식은 다음과 같이 주어진다.

\[ |{\pmb A}| = |{\pmb A}_{11}| |{\pmb A}_{22} | \]